﻿using BCDto.MySql.Admin;
using BCDto.OA.Attendance.AttendanceRemedyRules;
using System.Collections.Generic;

namespace BCService.OA.Attendance.AttendanceRemedyRules
{
    /// <summary>
    /// 补卡规则
    /// </summary>
    public interface IAttendanceRemedyRulesService
    {
        /// <summary>
        /// 获取补卡规则信息列表
        /// </summary>
        /// <returns></returns>
        List<AttendanceRemedyRulesDto> GetList();

        /// <summary>
        /// 新创建补卡规则信息
        /// </summary>
        /// <param name="admin">当前登录管理员</param>
        /// <param name="dto">请求的补卡规则信息</param>
        /// <returns></returns>
        AttendanceRemedyRulesDto Create(AdminDto admin, AttendanceRemedyRulesRequestDto dto);

        /// <summary>
        /// 修改指定的补卡规则信息
        /// </summary>
        /// <param name="admin">当前管理员</param>
        /// <param name="remedyRuleId">班次Id</param>
        /// <param name="dto">修改信息</param>
        /// <returns></returns>
        AttendanceRemedyRulesDto Update(AdminDto admin, long remedyRuleId, AttendanceRemedyRulesRequestDto dto);

        /// <summary>
        /// 查询指定的补卡规则信息
        /// </summary>
        /// <param name="remedyRuleId">补卡规则Id</param>
        /// <returns></returns>
        AttendanceRemedyRulesDto GetById(long remedyRuleId);

        /// <summary>
        /// 查询默认的补卡规则信息
        /// </summary>
        /// <returns></returns>
        AttendanceRemedyRulesDto GetFirstDefault();

    }
}
